package com.itlaobing.dev;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 1、如果需要分别对待来自浏览器的不同请求方式，比如区分GET请求和POST请求，则可以继承HttpServlet并重写相应方法
 * 2、在浏览器地址栏中直接输入URL后回车可以访问相应的资源，这种方式是GET方式请求
 * 3、在网页上鼠标左键单击超链接时，默认都是以GET方式请求请求相应资源
 */
@WebServlet( urlPatterns = { "/dispatcher/*" , "*.huoguoer" } )
public class DispatcherServlet extends HttpServlet {

	private static final long serialVersionUID = -201406838760445451L;

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) 
			throws ServletException, IOException {
		// 王八蛋才会调用doPost方法
		System.out.println( "GET" );
		// 在控制台（Console）中输出信息
		System.out.println( "dispatcher servlet : doGet" );
		// 获得可以向响应对象中输出数据的字符输出流
		PrintWriter w = resp.getWriter();
		// 向响应对象中输出HTML片段（最终发送到Web客户端）
		w.println( "<h1 align='center'>I am a dispatcher servlet .</h1>" );
		w.println( "<h3 align='center'>request method : GET .</h3>" );
	}

	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) 
			throws ServletException, IOException {
		// 王八蛋才会调用doGet方法
		System.out.println( "POST" );
		// 在控制台（Console）中输出信息
		System.out.println( "dispatcher servlet : doPost" );
		// 获得可以向响应对象中输出数据的字符输出流
		PrintWriter w = resp.getWriter();
		// 向响应对象中输出HTML片段（最终发送到Web客户端）
		w.println( "<h1 align='center'>I am a dispatcher servlet .</h1>" );
		w.println( "<h3 align='center'>request method : POST .</h3>" );
	}

}
